package educar.controllers;

import educar.db.JPA;
//import educar.gui.AlumnoView;
import educar.gui.ComboAbmView;
import java.sql.SQLException;
//import educar.gui.DatosView;
import educar.gui.IView;
import educar.gui.CargarUsuarioView;
//import educar.models.Session;
//import educar.models.User;
import educar.models.Dedicacion;
import educar.models.Persona;
import educar.models.Docente;
import educar.models.Alumno;
import educar.models.User;
import educar.models.Administrador;

public class CargarUsuarioController implements IController {
        private ComboAbmView combo;
        private Docente doc;
        private Alumno alu;
        private Administrador adm;
        private User us;
        private CargarUsuarioView com;
        public CargarUsuarioView com1;
        private JPA carUs;
        //private String cargar;
        
        public void process(String model){
        	String dni=com.getDni();
        	carUs = new JPA();
        	String nombre = com.getNombre();
        	String apellido = com.getApellido();
        	String telefono = com.getTelefono();
            String mail = com.getMail();
            String direccion = com.getDireccion();
            String usuario = com.getUsuario();
            String contraseña = com.getContraseña();
            String role = combo.getCargar(); 

             if ((role.compareTo("Alumno")==0) ||(role.compareTo("Administrador")==0) || (role.compareTo("Docente")==0)){
                if ((dni.compareTo("")==0) || (nombre.compareTo("")==0) || (apellido.compareTo("")==0) || (telefono.compareTo("")==0) || (mail.compareTo("")==0) || (direccion.compareTo("")==0) ||(usuario.compareTo("")==0) || (contraseña.compareTo("")==0)){
            	   com.present("Error: DATOS INCOMPLETOS");
            	   com.dispose();
                }else if ((carUs.NoExistente("persona","dni","dni='"+dni+"'"))== false){
           		    com.present("ESTA PERSONA YA SE ENCUENTRA EN LA BASE DE DATOS");
                    com.dispose();
             }else if (role.compareTo("Alumno")==0){
            	 alu = new Alumno (dni,nombre,apellido,direccion,telefono,mail);
         		 alu.save();
         	     us = new User (usuario,contraseña,role,dni);
        	     us.save();
         		com.present("LOS DATOS SE HAN CARGADO EN LA BASE DE DATOS");
              	com.dispose();
             }else if (role.compareTo("Administrador")==0) {
            	 adm = new Administrador (dni,nombre,apellido,direccion,telefono,mail);
         		 adm.save();
         		 us = new User (usuario,contraseña,role,dni);
         		 us.save();
         		com.present("LOS DATOS SE HAN CARGADO EN LA BASE DE DATOS");
              	com.dispose();
             }
             else if (role.compareTo("Docente")==0) {
            	doc = new Docente (dni,nombre,apellido,direccion,telefono,mail);
        		doc.save();
        		us = new User (usuario,contraseña,role,dni);
        		us.save();
        		com.present("LOS DATOS SE HAN CARGADO EN LA BASE DE DATOS");
             	com.dispose();
            }
             	
            }
        		
             	
            
            //carUs.insertU(usuario,contraseña,role,dni);
            //carUs.insert("users","password", contraseña, "dni='"+dni+"'");
            
            //carUs.insert
            	
            }       
      
    	//System.out.println("lau");
            
        


        @Override
        public void setView(IView com) {
        	this.com = (CargarUsuarioView) com;
        } 
        
        /*public void setView1(IView com1) {
        	this.com1 = (CargarUsuarioView) com1;
        }*/
}
